package com.hd.appcommon.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hd.appcommon.entity.StudentCourse;
import com.hd.appcommon.entity.User;
import com.hd.appcommon.entity.vo.CourseTableExcelVo;
import com.hd.appcommon.entity.vo.CourseTableVo;
import com.hd.hdxgddcommon.page.MyPage;

import java.util.Collection;
import java.util.List;
import java.util.function.Function;

public interface StudentCourseService extends IService<StudentCourse> {
    boolean updateBatchByQueryWrapper(Collection<StudentCourse> entityList, Function<StudentCourse, QueryWrapper<StudentCourse>> queryWrapperFunction);

    Integer isExist(String studentJobNumber, String courseSpecificCode,String schoolYear,String term);

    public IPage<CourseTableVo> getCourseTableVo(MyPage page, String collegeName,
                                                 String studentName,
                                                 String jobNumber,
                                                 String schoolYear,
                                                 String term,
                                                 String courseName,
                                                 String courseType);

    List<CourseTableExcelVo> getCourseTableVo2(String collegeName, String studentName, String jobNumber, String schoolYear, String term, String courseName, String courseType);


    void cleanMultipartData();
}
